Type-Safe Update Programming
نویسندگان
چکیده
Many software maintenance problems are caused by using text editors to change programs. A more systematic and reliable way of performing program updates is to express changes with an update language. In particular, updates should preserve the syntaxand typecorrectness of the transformed object programs. We describe an update calculus that can be used to update lambdacalculus programs. We develop a type system for the update language that infers the possible type changes that can be caused by an update program. We demonstrate that type-safe update programs that fulfill certain structural constraints preserve the type-correctness of lambda terms.
منابع مشابه
An update calculus for expressing type-safe program updates
The dominant share of software development costs is spent on software maintenance, particularly the process of updating programs in response to changing requirements. Currently, such program changes tend to be performed using text editors, an unreliable method that often causes many errors. In addition to syntax and type errors, logical errors can be easily introduced since text editors cannot ...
متن کاملHigh-Level Database Programming in Curry
This paper presents an environment to support high-level database programming in the multi-paradigm declarative programming language Curry. We define an application programming interface (API) that abstracts from the concrete database access methods. The API supports transactions and exploits Curry’s type system to ensure a strict separation between queries and updates. In order to ensure datab...
متن کاملMosaic: A Non-Intrusive Complete Garbage Collector for DSM System
Little work has been done in garbage collection algorithms for distributed shared memory systems. Mosaic is a safe and complete garbage collection system that collects garbage in object systems that are implemented above page-based distributed shared memory systems. It is non-intrusive in its impact on application performance. Mosaic partitions the virtual address space into separately managed ...
متن کاملCompiling ER Specifications into Declarative Programs
This paper proposes an environment to support high-level database programming in a declarative programming language. In order to ensure safe database updates, all access and update operations related to the database are generated from high-level descriptions in the entityrelationship (ER) model. We propose a representation of ER diagrams in the declarative language Curry so that they can be con...
متن کاملSafe Dynamic Software Updates in Multi-Threaded Systems with ActiveContext
Applications need to be updated. The traditional approach to stop and consequently restart an application for an update is not a valid scenario in the case of high availability environments—they need to be updated at runtime. The reflective capabilities of dynamic languages offer a convenient way to install updates at runtime, but do not provide adequate mechanisms to ensure safety. They suffer...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003